package com.chentongwei.common.constant;

/**
 * 通用响应常量
 *
 * @author TongWei.Chen 2017-05-16 13:32:19
 */
public enum ResponseEnum implements IBaseEnum {

    /**
     * 系统部分
     */
    SUCCESS(0, "处理成功"),
    FAILED(1, "系统异常"),

    /**
     * 异常部分
     */
    PARAM_ERROR(3, "参数传递异常"),
    NULL(4, "数据为空"),
    OPERATE_ERROR(5, "操作失败"),
    TOKEN_IS_NULL(6, "token不能为空"),
    GT_IS_ERROR(7, "验证码不正确"),
    GT_IS_EXPIRED(8, "验证码已失效，请刷新页面"),

    /**
     * 用户部分(100开始)
     */
    PWD_AND_ENSUREPWD_NOT_SAMED(100, "两次密码输入不一致"),
    EMAIL_ALREADY_EXISITS(101, "该邮箱已存在"),
    EMAIL_NULL_ERROR(102, "电子邮箱不能为空"),
    EMAIL_TITLE_NULL_ERROR(103, "邮件标题没有设置，请调用title方法设置"),
    EMAIL_CONTENT_NULL_ERROR(104, "邮件内容没有设置，请调用title方法设置"),
    EMAIL_RECEIVE_NULL_ERROR(105, "没有接收者邮箱地址，请调用targets方法设置"),
    EMAIL_TIMEOUT_ERROR(106, "激活失败，邮箱已经超过有效期（2小时）"),
    USER_ALREADY_ACTIVE(107, "用户已激活，无需重复激活"),
    USER_NOT_ACTIVE(108, "用户未激活"),
    USER_IS_DISABLED(109, "用户被禁用"),
    EMAIL_OR_PWD_ERROR(110, "用户名或密码错误"),
    USER_NOT_EXISTS(111, "用户名不存在")
    ;

    //状态码
    private int code;
    //消息
    private String msg;

    private ResponseEnum(int code, String msg) {
        this.code = code;
        this.msg = msg;
    }

    @Override
    public int getCode() {
        return this.code;
    }

    @Override
    public String getMsg() {
        return this.msg;
    }
}
